package work.mediway.mdm.biz.entity.dict;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 固定代码表
 *
 * @author zhongyj <1126834403@qq.com><br/>
 * @date 2021/1/14
 */
@ApiModel(value = "固定代码表")
@Data
@TableName(value = "CT_CodeSystem")
public class CtCodeSystem {
    /**
     * 代码，系统编号
     */
    @TableId(value = "CTCS_Code", type = IdType.INPUT)
    @ApiModelProperty(value = "代码，系统编号")
    private String codeSystemCode;

    /**
     * 描述
     */
    @TableField(value = "CTCS_Desc")
    @ApiModelProperty(value = "描述")
    private String codeSystemDesc;

    /**
     * OID代码，卫生行业值域代码OID分配
     */
    @TableField(value = "CTCS_CODESYSTEM")
    @ApiModelProperty(value = "OID代码，卫生行业值域代码OID分配")
    private String codeSystem;

    /**
     * 最后更新人编码
     */
    @TableField(value = "CTCS_UpdateUserCode")
    @ApiModelProperty(value = "最后更新人编码")
    private String lastUpdateUserId;

    /**
     * 更新日期
     */
    @TableField(value = "CTCS_UpdateDate")
    @ApiModelProperty(value = "更新日期")
    private String updateDate;

    /**
     * 更新时间
     */
    @TableField(value = "CTCS_UpdateTime")
    @ApiModelProperty(value = "更新时间")
    private String updateTime;

    /**
     * 备注
     */
    @TableField(value = "CTCS_Remarks")
    @ApiModelProperty(value = "备注")
    private String codeSystemRemarks;

    /**
     * 入参解析开始位置
     */
    @TableField(value = "CTCS_EvalExpression")
    @ApiModelProperty(value = "入参解析开始位置")
    private String evalExpression;

    /**
     * 所属对应存储类
     */
    @TableField(value = "CTCS_SaveTableClass")
    @ApiModelProperty(value = "所属对应存储类")
    private String saveTableClass;

    /**
     * 所属对应解析类
     */
    @TableField(value = "CTCS_EvaluTableClass")
    @ApiModelProperty(value = "所属对应解析类")
    private String evaluTableClass;

    /**
     * 最后更新日期
     */
    @TableField(value = "UpdateDate")
    @ApiModelProperty(value = "最后更新日期")
    private String lastUpdateDate;

    /**
     * 最后更新时间
     */
    @TableField(value = "UpdateTime")
    @ApiModelProperty(value = "最后更新时间")
    private String lastUpdateTime;

    /**
     * 字典分类
     */
    @TableField(value = "CTCS_Category")
    @ApiModelProperty(value = "字典分类")
    private String codeSystemCat;

    /**
     * 存储类类别
     */
    @TableField(value = "CTCS_TableCatogory")
    @ApiModelProperty(value = "存储类类别")
    private String tableCat;

    /**
     * 表格表单csp
     */
    @TableField(value = "CTCS_FormUrl")
    @ApiModelProperty(value = "表格表单csp")
    private String formUrl;

    /**
     * 编码规则
     * 手动维护,数字流水码,自定义规则 / 1,2,3
     */
    @TableField(value = "CTCS_CodingRule")
    @ApiModelProperty(value = "编码规则")
    private String codingRule;

    /**
     * 代码长度
     */
    @TableField(value = "CTCS_CodeLength")
    @ApiModelProperty(value = "代码长度")
    private Integer codeLength;

    /**
     * 生成代码的方法
     */
    @TableField(value = "CTCS_GenerateCodeMethod")
    @ApiModelProperty(value = "生成代码的方法")
    private String generateCodeMethod;

    /**
     * 总量
     */
    @TableField(value = "CTCS_DataCount")
    @ApiModelProperty(value = "总量")
    private Integer dataCount;

    /**
     * 状态
     */
    @TableField(value = "CTCS_Status")
    @ApiModelProperty(value = "状态")
    private String status;

    /**
     * 来源系统
     */
    @TableField(value = "CTCS_SourceSystem")
    @ApiModelProperty(value = "来源系统")
    private String sourceSystem;

    /**
     * 描述字段
     */
    @TableField(value = "CTCS_DescField")
    @ApiModelProperty(value = "描述字段")
    private String descField;

    /**
     * 接收业务域
     */
    @TableField(value = "CTCS_Business")
    @ApiModelProperty(value = "接收业务域")
    private String business;

    /**
     * 代码字段
     */
    @TableField(value = "CTCS_CodeField")
    @ApiModelProperty(value = "代码字段")
    private String codeField;

    /**
     * 计算匹配字段
     */
    @TableField(value = "CTCS_MatchFields")
    @ApiModelProperty(value = "计算匹配字段")
    private String matchFields;

    @TableField(exist = false)
    private String dateField;
}